The present invention relates generally to mobile robot systems and, more particularly, relates to a system and method for allocating mapping, localization, planning, control and task performance functions in an autonomous multi-platform robot environment.
Mobile robots have been designed, developed and deployed to handle a variety of tasks such as cleaning and security. Most mobile robots are non-autonomous; that is, they are unable to autonomously navigate. The economic benefits provided by non-autonomous robots are limited by the inflexible behavior of the robots and their extensive installation costs. Skilled technicians often must be hired and paid to preprogram the robots for specific routes and tasks. It may be necessary to install objects in the environment to guide the robots, such as tracks, buried signal emitting wires, markers or sensors. Further modifications to the environment may also be necessary to minimize installation and operational problems.
Some mobile non-autonomous robots can detect obstacles blocking their paths, and can stop or deviate slightly from their paths to avoid such obstacles. If the environment is modified significantly, however, such as by moving a large item of furniture, conventional non-autonomous robots do not properly react. Part or all of the installation process often must be repeated. Given this limitation, non-autonomous robots are usually deployed only on stable and high value routes. Though some non-autonomous robots rely on random motion to perform their tasks, such as pool cleaning robots, only a limited number of applications are amenable to this approach.
Fully autonomous mobile robots have begun to emerge from research laboratories during the past few years. Autonomous robots are able to navigate through their environment by sensing and reacting to their surroundings and environmental conditions. Autonomous robot navigation involves four primary tasks: mapping, localization, planning and control. These closely related concepts are analogous to asking the questions xe2x80x9cWhere am I?xe2x80x9d (mapping and localization), followed by xe2x80x9cWhere do I want to be?xe2x80x9d or xe2x80x9cWhat do I want to do?xe2x80x9d (planning), and finally, xe2x80x9cHow do I get there?xe2x80x9d or xe2x80x9cHow do I do that?xe2x80x9d (control).
Once mapping is complete, the robot""s current position, orientation and rate of change within the map must be determined. This process is referred to as localization. Autonomous robots that rely on 2D mapping and localization are often not able to navigate with adequate reliability due to the relative simplicity of the map. Often, the robots become lost, stuck or fall. Use of dynamic 3D mapping and localization, by contrast, permits navigation that is more reliable but involves complex calculations requiring a large amount of computational overhead. 3D maps typically have millions of cells, making straightforward operations such as landmark extraction, localization and planning computationally intensive. The resulting computational delays limit the speed of robot movement and task performance.
Once mapping and localization are accomplished, task planning and performance must be undertaken. Some localization will still be required during task performance. With one robot, attempting to localize while performing tasks leads to unacceptable delays. If multiple robots are used, the tradeoffs described above are often still present, and must now be dealt with multiple times over.
In view of the above, an autonomous, multi-robot system having fast, accurate and cost effective mapping and localization, as well as effective planning and allocation of tasks is needed.
The present invention is directed toward a system and method for allocating mapping, localization, planning, control and task performance functions in a multi-robot environment. The system comprises at least one navigator robot platform and one or more functional robot platforms that perform predetermined tasks.
For each task, a navigator and a given functional robot work in tandem. Mapping, localization, planning, and control functions are assigned to the at least one navigator robot, and functional tasks are assigned to the one or more functional robots. In one implementation, the system is used for cleaning the interior of a house or office. In this implementation, the functional robots perform the tasks of vacuuming, sweeping, mopping, cleaning bathroom fixtures, etc., while the navigator robot navigates, maneuvers and monitors the functional robots.
In one aspect of the present invention, there is a autonomous system of mobile robots operating within an arbitrary environment and comprising one or more functional mobile robot(s) that are responsible for performing functional tasks, and one or more autonomous navigator mobile robot(s) that localize themselves and the functional robot(s) within the environment using the functional robot(s) as landmarks and control the functional robot(s) during task performance.
In another aspect of the present invention, there is an autonomous system of mobile robots operating within an environment and comprising one or more functional mobile robot(s) that are responsible for performing functional tasks; and one or more autonomous navigator mobile robot(s) that localize themselves and the functional robot(s) within the environment using the functional robot(s) as landmarks and control the functional robot(s) during task performance, wherein, when the functional robot(s) are moving, the navigator robot(s) remain stationary, and wherein, when the navigator robot(s) are moving, the functional robot(s) remain stationary.
In yet another aspect of the present invention, there is an autonomous system of robots operating within an arbitrary environment and comprising one or more functional mobile robot(s) that are responsible for performing functional tasks; and a plurality of navigator robots including one or more autonomous navigator mobile robot(s) and one or more computing platform(s), wherein the navigator robots localize themselves and the functional robot(s) within the environment using the functional robot(s) as landmarks and control the functional robot(s) during task performance.
Further features and advantages of this invention as well as the structure of operation of various embodiments are described in detail below with reference to the accompanying drawings.